Harq/ack codebook size determination

ABSTRACT

Embodiments of the present disclosure describe devices, methods, computer-readable media and systems configurations for determining a hybrid automatic repeat request (HARQ)-acknowledgment (ACK) codebook in wireless communication networks.

CROSS REFERENCE TO RELATED APPLICATIONS

The present application claims priority to U.S. Provisional Patent Application No. 61/612,188, filed Mar. 16, 2012, entitled “WIRELESS COMMUNICATION SYSTEMS AND METHODS,” the entire disclosure of which is hereby incorporated by reference.

FIELD

Embodiments of the present invention relate generally to the field of communications, and more particularly, to determining size of a hybrid automatic repeat request-acknowledgment (HARQ-ACK) codebook in wireless communication networks.

BACKGROUND

Release 8 of the Third Generation Partnership Project (3GPP) Long-Term Evolution (LTE) standard describes piggybacking uplink control information (UCI) on a physical uplink shared channel (PUSCH). The channel quality indicator/pre-coding matrix indicator (CQI/PMI) resources are placed at the beginning of uplink shared channel (UL-SCH) data resources and mapped sequentially to all single-carrier frequency division multiple access (SC-FDMA) symbols on one subcarrier before continuing on the next subcarrier. The UL-SCH data is rate-matched around the CQI/PMI data. The HARQ-ACK resources are mapped to SC-FDMA symbols by puncturing the PUSCH data resource elements (REs). Reducing the PUSCH REs punctured by the HARQ-ACK symbols would, therefore, improve the PUSCH performance.

In light of the above, Release 8 provides a 2-bit downlink assignment Index (DAI) in downlink control information (DCI) format 0/4, V_(DAI) ^(UL), which is used to indicate total number of downlink (DL) assignments in a bundling window. Assuming the bundling window size is M, only V_(DAI) ^(UL) HARQ-ACK bits, rather than M bits, need to be fed back to a transmitting device, e.g., an enhanced node base station (eNB), if PUSCH transmission is adjusted based on a detected PDCCH with DCI format 0/4. Thus, (M−V_(DAI) ^(UL)) useless HARQ-ACK bits, corresponding to DL subframes that were not scheduled by the eNB, are reduced.

Release 10 of the LTE standard (Rel-10) introduces carrier aggregation, in which more than one component carrier (CC) may be used for data transmissions. In a Release 10 time division duplexing (TDD) system, the HARQ-ACK codebook size, in case of piggybacking on PUSCH, is determined by the number of CCs, their configured transmission mode, and number of downlink subframes in bundled window. For TDD UL-DL configurations 1-6, and when PUCCH format 3 is configured for transmission of HARQ-ACK, the HARQ-ACK codebook size is determined by:

n _(HARQ) =B _(c) ^(DL)(C+C ₂),  (1)

where C is the number of configured CCs, C₂ is the number of CCs configured with a multiple-input, multiple-output (MIMO) transmission mode that enables reception of two transport blocks; B_(c) ^(DL) is the number of downlink subframes for which UE needs to feedback HARQ-ACK bits for the c^(th) serving cell. For TDD UL-DL configuration 1, 2, 3, 4, and 6, the UEs will assume B_(c) ^(DL) on PUSCH subframe n as:

B _(c) ^(DL) =W _(DAI) ^(UL),  (2)

where W_(DAI) ^(UL) is determined by the DAI in DCI format 0/4 according to the following table:

TABLE 1 DAI MSB, LSB W_(DAI) ^(UL) 0, 0 1 0, 1 2 1, 0 3 1, 1 4

The DAI may be communicated in a subframe that has a predetermined association with subframe n for each serving cell. For example, the DAI may be communicated in subframe n−k′, where k′ is defined in the following table:

TABLE 2 TDD UL/DL subframe number n Configuration 0 1 2 3 4 5 6 7 8 9 1 6 4 6 4 2 4 4 3 4 4 4 4 4 4 5 4 6 7 7 5 7 7

Since the TDD UL-DL configuration of each serving cell is always identical in Rel-10 and W_(DAI) ^(UL) is definitely no larger than the bundling window size, the HARQ-ACK codebook size determined by W_(DAI) ^(UL) is always equal to minimum HARQ-ACK bits number and is the best tradeoff between HARQ-ACK overhead and performance.

In Release 11 of the 3GPP LTE standard, interband CA of TDD with CCs having different UL-DL configurations for each serving cell is supported. Having different UL-DL configurations in the different serving cells may result in different HARQ-ACK bundling windows. Therefore, the UL grant based HARQ-ACK codebook size determination in previous releases may not effectively reduce the HARQ-ACK overhead.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments will be readily understood by the following detailed description in conjunction with the accompanying drawings. To facilitate this description, like reference numerals designate like structural elements. Embodiments are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings.

FIG. 1 schematically illustrates a wireless communication network in accordance with various embodiments.

FIG. 2 illustrates an example TDD communication structure with HARQ-ACK timing information in accordance with various embodiments.

FIG. 3 is a flowchart illustrating a method of determining a HARQ-ACK codebook size that may be performed by a user equipment in accordance with various embodiments.

FIG. 4 is a HARQ-ACK bits generation table in accordance with some embodiments.

FIG. 5 schematically depicts an example system in accordance with various embodiments.

DETAILED DESCRIPTION

Illustrative embodiments of the present disclosure include, but are not limited to, methods, systems, computer-readable media, and apparatuses for determining a size of a HARQ-ACK codebook in wireless communication networks. Various embodiments may provide user equipment (UE) that operate in conformance with Release 11 of 3GPP LTE (hereinafter “Rel-11”) (and later releases) with the ability to determine HARQ-ACK codebook size on PUSCH in a manner to reduce HARQ-ACK overhead while maintaining HARQ-ACK performance for interband CA of TDD CCs with different UL-DL configurations for different serving cells. In this manner, described UEs may adaptively determine the desired HARQ-ACK codebook size to puncture the PUSCH REs that will reduce negative impact on the PUSCH with little to no additional overhead.

Various embodiments may be described with reference to specific configurations, e.g., TDD UL-DL configurations and special subframe configurations; formats, e.g., DCI formats; modes, e.g., transmission modes; etc. These configurations, formats, modes, etc., may be defined consistent with presently published LTE documents, e.g., Rel-10 and/or Rel-11 technical specifications.

Various aspects of the illustrative embodiments will be described using terms commonly employed by those skilled in the art to convey the substance of their work to others skilled in the art. However, it will be apparent to those skilled in the art that alternate embodiments may be practiced with only some of the described aspects. For purposes of explanation, specific numbers, materials, and configurations are set forth in order to provide a thorough understanding of the illustrative embodiments. However, it will be apparent to one skilled in the art that alternate embodiments may be practiced without the specific details. In other instances, well-known features are omitted or simplified in order not to obscure the illustrative embodiments.

Further, various operations will be described as multiple discrete operations, in turn, in a manner that is most helpful in understanding the illustrative embodiments; however, the order of description should not be construed as to imply that these operations are necessarily order dependent. In particular, these operations need not be performed in the order of presentation.

The phrase “in some embodiments” is used repeatedly. The phrase generally does not refer to the same embodiments; however, it may. The terms “comprising,” “having,” and “including” are synonymous, unless the context dictates otherwise. The phrase “A and/or B” means (A), (B), or (A and B). The phrase “A/B” means (A), (B), or (A and B), similar to the phrase “A and/or B”. The phrase “at least one of A, B and C” means (A), (B), (C), (A and B), (A and C), (B and C) or (A, B and C). The phrase “(A) B” means (B) or (A and B), that is, A is optional.

Although specific embodiments have been illustrated and described herein, it will be appreciated by those of ordinary skill in the art that a wide variety of alternate and/or equivalent implementations may be substituted for the specific embodiments shown and described, without departing from the scope of the embodiments of the present disclosure. This application is intended to cover any adaptations or variations of the embodiments discussed herein. Therefore, it is manifestly intended that the embodiments of the present disclosure be limited only by the claims and the equivalents thereof.

As used herein, the term “module” may refer to, be part of, or include an Application Specific Integrated Circuit (ASIC), an electronic circuit, a processor (shared, dedicated, or group) and/or memory (shared, dedicated, or group), combinational logic circuit, or other electronic circuit that provides the described functionality. In various embodiments, the module may execute instructions stored in one or more computer-readable media to provide the described functionality.

FIG. 1 schematically illustrates a wireless communication network 100 in accordance with various embodiments. Wireless communication network 100 (hereinafter “network 100”) may be an access network of a 3GPP LTE network such as evolved universal terrestrial radio access network (E-UTRAN). The network 100 may include a base station, e.g., enhanced node base station (eNB) 104, configured to wirelessly communicate with user equipment (UE) 108.

As shown in FIG. 1, the UE 108 may include feedback controller 112 coupled with transceiver module 116. The transceiver module 116 may be further coupled with one or more of a plurality of antennas 132 of the UE 108 for communicating wirelessly with other components of the network 100, e.g., eNB 104.

In some embodiments, the UE 108 may be capable of utilizing carrier aggregation (CA) in which a number of component carriers (CCs) are aggregated for communication between the eNB 104 and the UE 108. The transceiver module 116 may be configured to communicate with the eNB 104 via a plurality of serving cells utilizing a respective plurality of CCs. The CCs may be disposed in different bands and may be associated with different TDD UL-DL configurations (hereinafter also referred to as “UL-DL configurations”). Thus, in some embodiments, at least two serving cells may have different UL-DL configurations.

Table 3 below shows example UL-DL configurations that may be employed in various embodiments of the present invention.

TABLE 3 TDD UL-DL Subframe number configuration 0 1 2 3 4 5 6 7 8 9 0 D S U U U D S U U U 1 D S U U D D S U U D 2 D S U D D D S U D D 3 D S U U U D D D D D 4 D S U U D D D D D D 5 D S U D D D D D D D 6 D S U U U D S U U D

In Table 3, D is a subframe for a downlink transmission, U is a subframe for an uplink transmission, and S is a special subframe used, e.g., for a guard time. In some embodiments, a special subframe may include three fields: downlink pilot time slot (DwPTS), which may include the DCI, guard period (GP), and uplink pilot time slot (UpPTS)

In an initial connection establishment, the UE 108 may connect with a primary serving cell (PCell) of the eNB 104 utilizing a primary CC, which may also be referred to as CC₀. This connection may be used for various functions such as security, mobility, configuration, etc. Subsequently, the UE 108 may connect with one or more secondary serving cells (SCells) of the eNB 104 utilizing one or more secondary CCs. These connections may be used to provide additional radio resources.

FIG. 2 illustrates an example TDD communication structure 200 with HARQ-ACK timing information in accordance with an embodiment. In the TDD communication structure 200, three serving cells may be configured for communication between the eNB 104 and the UE 108. For example, a PCell having UL-DL configuration 0, an SCell 1 having UL-DL configuration 2, and an SCell 2 having UL-DL configuration 1. In other embodiments, other number of serving cells may be configured for communication between the eNB 104 and the UE 108.

In the TDD communication structure 200, the PCell may have a bundling window, M₀, that includes one subframe that may include downlink transmissions, e.g., PDSCH transmissions or PDCCH transmissions indicating downlink semi-persistent scheduling (SPS) release, for which corresponding HARQ-ACK information is to be transmitted as a PUSCH transmission in an associated uplink subframe, e.g., subframe 7 of the SCell 1. The SCell 1 may have a bundling window, M₁, that includes four subframes that may include downlink transmissions for which corresponding HARQ-ACK information is to be transmitted as a PUSCH transmission in an associated uplink subframe, e.g., subframe 7 of the SCell 1. The SCell 2 may have a bundling window, M₂, that includes two subframes that may include downlink transmissions for which corresponding HARQ-ACK information is to be transmitted as a PUSCH transmission in an associated uplink subframe, e.g., subframe 7 of the SCell 1. The association between the DL subframes of the respective bundling windows and the UL subframe that will be used to transmit the corresponding HARQ-ACK information may be based on a predetermined HARQ timing reference. An example of such HARQ timing references is shown and discussed below with respect to Table 4.

In the example shown in FIG. 2, all of the subframes capable of carrying downlink transmissions for which corresponding HARQ-ACK information is to be transmitted are shown as having PDSCH transmissions. However, in other embodiments, the eNB may not schedule downlink transmissions on one or more of these subframes.

FIG. 3 illustrates a method 300 of determining a HARQ-ACK codebook size in accordance with some embodiments. Method 300 may be performed by a feedback controller of a UE, e.g., feedback controller 112 of UE 108. In some embodiments, the UE may include and/or have access to one or more computer-readable media having instructions stored thereon, that, when executed, cause the UE, or feedback controller, to perform the method 300.

At 304, the feedback controller may determine the HARQ-ACK timing and bundling window for each configured serving cell. In some embodiments, the feedback controller may determine, for each configured serving cell, a total number of subframes within a bundling window that is associated with an uplink subframe. In general, the HARQ-ACK bundling window may include both downlink subframes and special subframes, as both are capable of carrying PDSCH transmissions. However, in some embodiments, certain special subframes may be excluded from the bundling window in order to reduce HARQ-ACK codebook size. For example, in special subframes of configurations 0 and 5 with normal downlink cyclic prefix (CP) or configurations 0 and 4 with extended downlink CP may be excluded from the bundling window as they typically do not carry PDSCH transmissions. The special subframe configurations may be defined consistent with Table 4.2-1 of 3GPP Technical Specification (TS) 36.211 V 10.5.0 (2012-06).

In some embodiments, the HARQ-ACK timing and bundling windows, M_(c), may be determined according to a predetermined downlink association set index K: {k₀, k₁, . . . k_(M-1)} for TDD as illustrated in the UL-DL configurations for HARQ timing reference of Table 4.

TABLE 4 UL-DL Subframe n Configuration 0 1 2 3 4 5 6 7 8 9 0 — — 6 — 4 — — 6 — 4 1 — — 7, 6 4 — — — 7, 6 4 — 2 — — 8, 7, 4, 6 — — — — 8, 7, 4, 6 — — 3 — — 7, 6, 11 6, 5 5, 4 — — — — — 4 — — 12, 8, 7, 11 6, 5, 4, 7 — — — — — — 5 — — 13, 12, 9, 8, 7, 5, 4, 11, 6 — — — — — — — 6 — — 7 7 5 — — 7 7 —

In various embodiments, each serving cell may have a HARQ timing reference that is the same or different from the UL-DL configuration of the serving cell. The UL-DL configuration of the serving cell is communicated in the serving cell's System Information Block (SIB) 1 and, therefore, may also be referred to as the serving cell's SIB 1 configuration. The HARQ timing reference of a PCell may be the same as the PCell's SIB1 configuration, while a HARQ timing reference of an SCell may be selected by considering both the SCell's SIB1 configuration and the PCell's SIB1 configuration according to Table 5.

TABLE 5 UL-DL configuration for HARQ timing SCell SIB1 UL-DL configuration reference 0 1 2 3 4 5 6 PCell SIB1 0 0 1 2 3 4 5 6 UL-DL 1 1 1 2 4 4 5 1 configuration 2 2 2 2 5 5 5 2 3 3 4 5 3 4 5 3 4 4 4 5 4 4 5 4 5 5 5 5 5 5 5 5 6 6 1 2 3 4 5 6

According to Table 5, and with reference to FIG. 2, the PCell will use UL-DL configuration 0 for its HARQ timing reference, SCell 1 will use UL-DL configuration 2 for its HARQ timing reference, and SCell2 will use UL-DL configuration 1 for its HARQ timing reference. While this embodiment illustrates both SCells using their SIB1 configurations for HARQ timing reference, an SCell may use other UL-DL configurations for its HARQ timing reference in other embodiments. For example, if SCell 1 had a SIB1 configuration of 3 and the PCell had a SIB1 configuration of 1, the SCell would use UL-DL configuration 4 for its HARQ timing reference.

To further illustrate use of Tables 4 and 5, consider the following. With subframe 7 (e.g., n=7) of the SCell 1 being designated as the uplink subframe for transmitting HARQ-ACK information, the associated downlink subframes may be determined by n−k, where kεK. The size of the bundling window, M_(c), is the cardinality of the set K of elements, and the specific subframes of the bundling window are determined by n−k₀, . . . n−k_(M-1). So, the size of the bundling window of the PCell, M₀, is 1 (given that only one element is associated with UL-DL configuration 0, subframe n=7 in Table 4), and the downlink subframe of M₀ is 7−6=1, e.g., DL subframe 1. The size of the bundling window of SCell 1, M_(I), is 4 (given four elements of Table 4) and the DL subframes of M₁ are subframe 3 (7-4), subframe 1 (7-6), subframe 0 (7-7), and subframe 9 of previous frame (7-8). The size of the bundling window of SCell 2, M₂, is 2 (given two elements of Table 4) and the DL subframes of M₂ are subframe 0 (7-7) and subframe 1 (7-6).

At 308, the feedback controller may determine a DAI. The DAI may be communicated in a subframe that has a predetermined association with the uplink subframe, n, that will carry the HARQ-ACK information for the bundling windows, e.g., subframe 7 in SCell 1. In some embodiments, the DAI may be communicated in subframe n−k′, where k′ is defined in Table 2. In some embodiments, the DAI may be used to determine W_(DAI) ^(UL) according to Table 1. W_(DAI) ^(UL) may correspond to a maximum value of number of scheduled downlink subframes within bundling windows of the plurality of serving cells. With reference to FIG. 2, W_(DAI) ^(UL)=4 because 4 downlink subframes are scheduled in SCell 1.

At 312, the feedback controller may determine a number of HARQ-ACK bits, which correspond to the configured serving cells, on a PUSCH of the uplink subframe. In some embodiments, the feedback controller may determine the number of HARQ-ACK bits, for each serving cell, based on the W_(DAI) ^(UL), which is based on the DAI for uplink resource allocation, and the number of subframes of the bundling window of the corresponding serving cell according to the HARQ timing reference configuration.

In some embodiments, the number of HARQ-ACK bits for the c^(th) serving cell, O_(c), may be determined by the following equation.

$\begin{matrix} {{O_{c} = {{{Min}\left( {M_{c}^{DL},{W_{DAI}^{UL} + {4\left\lceil \frac{\left( {U - W_{DAI}^{UL}} \right)}{4} \right\rceil}}} \right)}*C_{c}^{DL}}},} & {{Equation}\mspace{14mu} 1} \end{matrix}$

where U is a maximum value of U_(c,) among all configured serving cells, U_(c) is the total number of subframes with received transmissions (e.g., PDSCHs and PDCCHs indicating downlink SPS release) in bundling window (e.g., subframe(s) n−k where kεK as described with respect to Table 4) of the c^(th) serving cell, W_(DAI) ^(UL) is determined by the DAI included in DCI, which may have format 0 or 4, that allocates uplink transmission resource of the serving cell in which the UCI piggybacking on the PUSCH (e.g., SCell 1) according to Table 1 in subframe n−k′, where k′ is defined in Table 2; C_(c) ^(DL)=1 if transmission mode configured in the c^(th) serving cell supports one transport block and C_(c) ^(DL)=2 otherwise; and Min(X, Y)=X if X≦Y, and Min(X, Y)=Y otherwise.

In embodiments in which none of the plurality of aggregated serving cells include a configuration 5 as a HARQ timing reference configuration, W_(DAI) ^(UL) will be at least as large as U, thereby canceling out the

$4\left\lceil \frac{\left( {U - W_{DAI}^{UL}} \right)}{4} \right\rceil$

term of Equation 1. Thus, Equation 1 is reduced to:

O _(c)=Min(M _(c) ^(DL) ,W _(DAI) ^(UL))*C _(c) ^(DL).  Equation 2

Thus, in some embodiments, Equation 2 will be used for HARQ-ACK transmission in an UL subframe n and on the PUSCH adjusted by its associated UL grant with W_(DAI) ^(UL) if none of the HARQ timing reference configurations of the aggregated serving cells is configuration 5, and Equation 1 will be used for HARQ-ACK transmission in an UL subframe n and on the PUSCH adjusted by its associated UL grant with W_(DAI) ^(UL) if the HARQ timing reference configuration of any of the aggregated serving cells is configuration 5.

It may be noted that in some embodiments, neither Equation 1 or 2 may be used in situations in which the serving cell that performs the PUSCH scheduling (e.g., SCell 1 in FIG. 2) has a SIB1 configuration 0. In these embodiments, the eNB may not be able to transmit DAI in DCI format 0/4 and, therefore, the UE will not be able to determine W.

The HARQ-ACK feedback bits O_(c,0) ^(ACK), O_(c,1) ^(ACK), . . . , O_(c,o) _(c) ^(ACK) for the c^(th) serving cell are constructed as follows, where c≧0: the HARQ-ACK for a PDSCH transmission associated with a DCI message of a PDDCH or a PDCCH transmission indicating downlink SPS release in subframe n−k is associated with O_(c,DAI(k)−1) ^(ACK) if transmission mode configured in the c^(th) serving cell supports one transport block, or associated with O_(c,DAI(k)−2) ^(ACK) and O_(c,DAI(k)−1) ^(ACK) otherwise, where DAI(k) is the value of DAI, for resource allocation of downlink subframe, in DCI format 1A/1B/1D/1/2/2A/2B/2C detected in subframe n−k depending on the bundling window in the c^(th) serving cell. The HARQ-ACK feedback bits without any detected PDSCH transmission or without detected PDCCH indicating downlink SPS release may be set to NACK.

An example is provided below, with reference to FIG. 2 and assuming transmission mode 4 with two transport blocks enabled is configured. The special subframe configuration of each CC is configuration 3 with normal downlink cyclic prefix (CP). As stated above, the eNB, in this example, may transmit at each opportunity within the designated bundling windows, e.g., subframe 1 of PCell, subframes 9, 0, 1, and 3 of SCell 1, and subframes 0 and 1 of SCell 2. Further, the UE may receive, in subframe 3 of the SCell 1, the uplink grant for the PUSCH transmission at subframe 7 of the SCell 1. Since the maximum value of total number of PDSCH scheduled subframes within the bundling windows is 4 according to present assumptions, the W, of uplink grant for subframe 7 shall be set as 4 by the eNB. According to Equation 1, the O₀ value of HARQ-ACK bits for PCell may be calculated as follows

$O_{0} = {{{{Min}\left( {1,{4 + {4\left\lceil \frac{\left( {4 - 4} \right)}{4} \right\rceil}}} \right)}*2} = 2.}$

In the same manner, the HARQ-ACK bits for SCell 1 and SCell 2 may be determined as O₁=8 and O₂=4, respectively. This is shown, graphically, in HARQ-ACK bits generation table 400 of FIG. 4 in accordance with some embodiments. Were the HARQ-ACK bits determined according to the Rel-10 methodology, the results would be O₀=8, O₁=8 and O₂=8.

At 316, the feedback controller may determine the HARQ-ACK codebook size on the PUSCH of the uplink subframe. The determination of the HARQ-ACK codebook size may be done by aggregating the number of HARQ-ACK bits that corresponds to each of the plurality of serving cells according to the following equation,

$\begin{matrix} {O = {\sum\limits_{c = 0}^{N_{Cells}^{DL} - 1}{O_{c}.}}} & {{Equation}\mspace{14mu} 2} \end{matrix}$

In the above discussed example, O=14. In the Rel-10 methodology, O=24. Thus, the described embodiments result in a 42% reduction in HARQ-ACK overhead. In this manner, the PUSCH performance and system throughput may be improved without impacting HARQ-ACK performance.

The UE 108 described herein may be implemented into a system using any suitable hardware and/or software to configure as desired. FIG. 5 illustrates, for one embodiment, an example system 500 comprising one or more processor(s) 504, system control logic 508 coupled with at least one of the processor(s) 504, system memory 512 coupled with system control logic 508, non-volatile memory (NVM)/storage 516 coupled with system control logic 508, a network interface 520 coupled with system control logic 508, and input/output (I/O) devices 532 coupled with system control logic 508.

The processor(s) 504 may include one or more single-core or multi-core processors. The processor(s) 504 may include any combination of general-purpose processors and dedicated processors (e.g., graphics processors, application processors, baseband processors, etc.).

System control logic 508 for one embodiment may include any suitable interface controllers to provide for any suitable interface to at least one of the processor(s) 504 and/or to any suitable device or component in communication with system control logic 508.

System control logic 508 for one embodiment may include one or more memory controller(s) to provide an interface to system memory 512. System memory 512 may be used to load and store data and/or instructions for system 500. In some embodiments, the system memory 512 may include HARQ logic 524 that, when executed, cause a feedback controller to perform the various operations described herein. System memory 512 for one embodiment may include any suitable volatile memory, such as suitable dynamic random access memory (DRAM), for example.

NVM/storage 516 may include one or more tangible, non-transitory computer-readable media used to store data and/or instructions, for example, HARQ logic 524. NVM/storage 516 may include any suitable non-volatile memory, such as flash memory, for example, and/or may include any suitable non-volatile storage device(s), such as one or more hard disk drive(s) (HDD(s)), one or more compact disk (CD) drive(s), and/or one or more digital versatile disk (DVD) drive(s), for example.

The NVM/storage 516 may include a storage resource physically part of a device on which the system 500 is installed or it may be accessible by, but not necessarily a part of, the device. For example, the NVM/storage 516 may be accessed over a network via the network interface 520 and/or over Input/Output (I/O) devices 532.

Network interface 520 may have a transceiver module 522, similar to transceiver module 116, to provide a radio interface for system 500 to communicate over one or more network(s) and/or with any other suitable device. In various embodiments, the transceiver module 522 may be integrated with other components of system 500. For example, the transceiver module 522 may include a processor of the processor(s) 504, memory of the system memory 512, and NVM/Storage of NVM/Storage 516. Network interface 520 may include any suitable hardware and/or firmware. Network interface 520 may include a plurality of antennas to provide a multiple input, multiple output radio interface. Network interface 520 for one embodiment may include, for example, a wired network adapter, a wireless network adapter, a telephone modem, and/or a wireless modem.

For one embodiment, at least one of the processor(s) 504 may be packaged together with logic for one or more controller(s) of system control logic 508. For one embodiment, at least one of the processor(s) 504 may be packaged together with logic for one or more controllers of system control logic 508 to form a System in Package (SiP). For one embodiment, at least one of the processor(s) 504 may be integrated on the same die with logic for one or more controller(s) of system control logic 508. For one embodiment, at least one of the processor(s) 504 may be integrated on the same die with logic for one or more controller(s) of system control logic 508 to form a System on Chip (SoC).

In various embodiments, the I/O devices 532 may include user interfaces designed to enable user interaction with the system 500, peripheral component interfaces designed to enable peripheral component interaction with the system 500, and/or sensors designed to determine environmental conditions and/or location information related to the system 500.

In various embodiments, the user interfaces could include, but are not limited to, a display (e.g., a liquid crystal display, a touch screen display, etc.), a speaker, a microphone, one or more cameras (e.g., a still camera and/or a video camera), a flashlight (e.g., a light emitting diode flash), and a keyboard.

In various embodiments, the peripheral component interfaces may include, but are not limited to, a non-volatile memory port, a universal serial bus (USB) port, an audio jack, and a power supply interface.

In various embodiments, the sensors may include, but are not limited to, a gyro sensor, an accelerometer, a proximity sensor, an ambient light sensor, and a positioning unit. The positioning unit may also be part of, or interact with, the network interface 520 to communicate with components of a positioning network, e.g., a global positioning system (GPS) satellite.

In various embodiments, the system 500 may be an eNB or a mobile computing device such as, but not limited to, a laptop computing device, a tablet computing device, a netbook, a smartphone, etc. In various embodiments, system 500 may have more or less components, and/or different architectures.

Although certain embodiments have been illustrated and described herein for purposes of description, a wide variety of alternate and/or equivalent embodiments or implementations calculated to achieve the same purposes may be substituted for the embodiments shown and described without departing from the scope of the present disclosure. This application is intended to cover any adaptations or variations of the embodiments discussed herein. Therefore, it is manifestly intended that embodiments described herein be limited only by the claims and the equivalents thereof. 

1. An apparatus comprising: transceiver module configured to communicate via a plurality of serving cells, wherein at least two of the serving cells have different time division duplexing (TDD) uplink-downlink (UL-DL) configurations; and a feedback controller coupled with the transceiver module and configured to: obtain a downlink assignment index (DAI); determine a number of downlink subframes within a bundling window of a first serving cell of the plurality of serving cells, wherein the downlink subframes of the bundling window are associated with an uplink subframe for transmission of corresponding hybrid automatic repeat request-acknowledgment (HARQ-ACK) information; and determine a number of HARQ-ACK bits, which corresponds to the first serving cell, available on a physical uplink shared channel (PUSCH) of the uplink subframe based on the DAI and the determined number of downlink subframes.
 2. The apparatus of claim 1, wherein the DAI corresponds to a maximum value of number of scheduled downlink subframes within bundling windows of the plurality of serving cells, wherein the downlink subframes within the bundling windows of the plurality of serving cells are associated with the uplink subframe, and the feedback controller is further configured to: determine the HARQ-ACK bits based on the maximum value.
 3. The apparatus of claim 1, wherein the DAI is included in downlink control information (DCI) that allocates uplink transmission resource of a serving cell having the uplink subframe.
 4. The apparatus of claim 3, wherein the DCI has a format that is DCI format 0 or DCI format
 4. 5. The apparatus of claim 1, wherein at least one of the subframes within the bundling window include a physical downlink shared channel (PDSCH) transmission associated with a downlink control information (DCI) message of a physical downlink control channel (PDCCH) or a PDCCH transmission indicating downlink semi-persistent scheduling (SPS) release to a user equipment (UE) to which the HARQ-ACK information corresponds.
 6. The apparatus of claim 1, wherein the number of downlink subframes within the bundling window associated with the uplink subframe does not include a special subframe of configurations 0 and 5 with normal downlink cyclic prefix (CP) or of configurations 0 and 4 with extended downlink CP.
 7. The apparatus of claim 1, wherein the feedback controller is further configured to: determine a number of HARQ-ACK bits, which correspond to each of the plurality of serving cells, available on the PUSCH of the uplink subframe; and determine a HARQ-ACK codebook size on the PUSCH of the uplink subframe based on the determined number of HARQ-ACK bits that correspond to each of the plurality of serving cells.
 8. The apparatus of claim 7, wherein the feedback controller is configured to determine the HARQ-ACK codebook size by being configured to aggregate the determined number of HARQ-ACK bits that correspond to each of the plurality of serving cells.
 9. The apparatus of claim 1, wherein the feedback controller is further configured to: determine a value that corresponds to the DAI; select whichever of the determined value or the determined number of downlink subframes is smaller as the number of HARQ-ACK bits for the first serving cell; and determine a HARQ-ACK codebook size on the PUSCH of the uplink subframe based on the number of HARQ-ACK bits for the first serving cell.
 10. The apparatus of claim 9, wherein the feedback controller is further configured to: determine a number of transport blocks supported per subframe for a transmission mode of the first serving cell; and determine the number of HARQ-ACK bits for the first serving cell based on the determined number of transport blocks supported per subframe.
 11. The apparatus of claim 9, wherein the feedback controller is further configured to: determine a number of HARQ-ACK bits that correspond to each serving cell of the plurality of serving cells; and determine the HARQ-ACK codebook size based on the determined number of HARQ-ACK bits that correspond to each serving cell of the plurality of serving cells.
 12. The apparatus of claim 11, wherein the feedback controller is further configured to determine the number of HARQ-ACK bits that correspond to each serving cell of the plurality of serving cells based on: O _(c)=min(M _(c) ^(DL) ,W _(DAI) ^(UL))*C _(c) ^(DL), where c is a serving cell index, O_(c) is the number of HARQ-ACK bits that correspond to the c^(th) serving cell, M_(c) ^(DL) is the number of downlink subframes of a bundling window of the c^(th) serving cell, wherein the bundling window is determined according to a HARQ timing reference configuration of the c^(th) serving cell and excludes special subframes of configurations 0 and 5 with normal downlink cyclic prefix (CP) and of configurations 0 and 4 with extended downlink CP, W_(DAI) ^(UL) is the determined value that corresponds to the DAI in downlink control information (DCI) format for uplink resource allocation for the plurality of serving cells, and C_(c) ^(DL) is a number of transport blocks supported per subframe for a transmission mode of the c^(th) serving cell.
 13. The apparatus of claim 9, wherein the feedback controller is further configured to: determine a number of PDSCH transmissions and PDCCH transmissions that indicate downlink semi-persistent scheduling (SPS) release that are received in subframes of bundling windows of each of the plurality of serving cells; determine a maximum of the determined numbers of PDSCH transmissions and PDCCH transmissions that indicate downlink SPS release that are received in subframes of bundling windows of each of the plurality of serving cells; and determine the number of HARQ-ACK bits based on the determined maximum.
 14. The apparatus of claim 13, wherein the feedback controller is further configured to determine the number of HARQ-ACK bits that correspond to each serving cell based on: ${O_{c} = {{\min\left( {M_{c}^{DL},{W_{DAI}^{UL} + {4\left\lceil \frac{U - W_{DAI}^{UL}}{4} \right\rceil}}} \right)}*C_{c}^{DL}}},$ where c is a serving cell index, O_(c) is the number of HARQ-ACK bits that correspond to the c^(th) serving cell, M_(c) ^(DL) is the number of downlink subframes in bundling window of the c^(th) serving cell, wherein the bundling window is determined according to a HARQ timing reference configuration of the c^(th) serving cell and excludes special subframes of configurations 0 and 5 with normal downlink cyclic prefix (CP) and of configurations 0 and 4 with extended downlink CP, W_(DAI) ^(UL) is the value that corresponds to the DAI, U is the determined maximum, and C_(c) ^(DL) is a number of transport blocks supported per subframe for the transmission mode of the c^(th) serving cell.
 15. The apparatus of claim 14, wherein the feedback controller is further configured to determine a HARQ-ACK codebook size, O, based on: ${O = {\sum\limits_{c = 0}^{N_{Cells}^{DL} - 1}O_{c}}},$ where N_(Cells) ^(DL) is the plurality of serving cells.
 16. The apparatus of claim 13, wherein the feedback controller is further configured to: if HARQ timing reference configuration of at least one serving cell of the plurality of serving cells is UL-DL configuration 5, determine the number of HARQ-ACK bits that correspond to each serving cell based on: ${O_{c} = {{\min\left( {M_{c}^{DL},{W_{DAI}^{UL} + {4\left\lceil \frac{U - W_{DAI}^{UL}}{4} \right\rceil}}} \right)}*C_{c}^{DL}}},$ if no HARQ timing reference configurations of the plurality of aggregated serving cells are UL-DL configuration 5, determine the number of HARQ-ACK bits that correspond to each serving cell of the plurality of serving cells based on: O _(c)=min(M _(c) ^(DL) ,W _(DAI) ^(UL))*C _(c) ^(DL) where c is a serving cell index, O_(c) is the number of HARQ-ACK bits that correspond to the c^(th) serving cell, M_(c) ^(DL) is the number of downlink subframes in bundling window of the c^(th) serving cell, W_(DAI) ^(UL) is the value that corresponds to the DAI in downlink control information (DCI) format for uplink resource allocation, U is the determined maximum, and C_(c) ^(DL) is a number of transport blocks supported per subframe for a transmission mode of the c^(th) serving cell.
 17. The apparatus of claim 1, wherein the uplink subframe is in a second serving cell of the plurality of serving cells.
 18. The apparatus of claim 1, wherein the number of HARQ-ACK bits corresponds to the downlink subframes of the bundling window of the first serving cell.
 19. The apparatus of claim 18, wherein the association of the downlink subframes of the bundling window with the uplink subframe is based on a predetermined HARQ-ACK timing reference.
 20. One or more computer-readable media having instructions, stored thereon, that, when executed cause a user equipment (UE) to: configure a plurality of serving cells for communication, wherein at least two of the serving cells have different time division duplexing (TDD) uplink-downlink (UL-DL) configurations; determine a size of a bundling window for individual serving cells of the plurality of serving cells; determine a value that corresponds to a maximum number of scheduled downlink subframes within the bundling windows of the plurality of serving cells; and determine a size of a HARQ-ACK codebook on a first uplink subframe that is associated with the bundling windows of the plurality of serving cells based on the size of the bundling window and the determined value.
 21. The one or more computer-readable media of claim 20, wherein the instructions, when executed, further cause the UE to: obtain a downlink assignment index; and determine the value based on the downlink assignment index.
 22. The one or more computer-readable media of claim 21, wherein the instructions, when executed, further cause the UE to: if HARQ timing reference configuration of at least one serving cell of the plurality of serving cells is configuration 5, determine a number of HARQ bits for bundling windows of the individual serving cells based on: ${O_{c} = {{\min\left( {M_{c}^{DL},{W_{DAI}^{UL} + {4\left\lceil \frac{U - W_{DAI}^{UL}}{4} \right\rceil}}} \right)}*C_{c}^{DL}}},$ if no HARQ timing reference configurations of the plurality of serving cells are configuration 5, determine the number of HARQ bits for bundling windows of the individual serving cells based on: O _(c)=min(M _(c) ^(DL) ,W _(DAI) ^(UL))*C _(c) ^(DL), where c is a serving cell index, O_(c) is a number of HARQ bits that correspond to the c^(th) serving cell, M_(c) ^(DL) is a number of downlink subframes in bundling window of c^(th) serving cell, wherein the bundling window is determined according to a HARQ timing reference configuration of the c^(th) serving cell and excludes special subframes of configurations 0 and 5 with normal downlink cyclic prefix (CP) and of configurations 0 and 4 with extended downlink CP, W_(DAI) ^(UL) is the determined value for the plurality of serving cells, U_(c) is a number of physical downlink shared channel (PDSCH) transmissions and physical downlink control channel (PDCCH) transmissions that indicate downlink semi-persistent scheduling (SPS) release that are received in subframes of bundling window of c^(th) serving cell, U is a maximum of the U_(c)s, and C_(c) ^(DL) is a number of transport blocks supported per subframe for transmission mode of the c^(th) serving cell.
 23. The one or more computer-readable media of claim 20, wherein the instructions, when executed, further cause the UE to: puncture physical uplink shared channel (PUSCH) resource elements with HARQ-ACK symbols based on the determined size of the HARQ-ACK codebook.
 24. One or more computer-readable media having instructions that, when executed, cause a feedback controller to: obtain a downlink assignment index (DAI); and if a HARQ timing reference configuration of at least one serving cell of a plurality of configured serving cells is configuration 5, determine a number of HARQ-ACK bits that correspond to each serving cell based on: ${O_{c} = {{\min\left( {M_{c}^{DL},{W_{DAI}^{UL} + {4\left\lceil \frac{U - W_{DAI}^{UL}}{4} \right\rceil}}} \right)}*C_{c}^{DL}}},$ if none of the HARQ timing reference configurations of the plurality of configured serving cells are configuration 5, determine the number of HARQ-ACK bits that correspond to each serving cell of the plurality of serving cells based on: O _(c)=min(M _(c) ^(DL) ,W _(DAI) ^(UL))*C _(c) ^(DL). where c is a serving cell index, O_(c) is a number of HARQ bits that correspond to the c^(th) serving cell, M_(c) ^(DL) is a number of downlink subframes in bundling window of c^(th) serving cell, wherein the bundling window is determined according to a HARQ timing reference configuration of the c^(th) serving cell and excludes special subframes of configurations 0 and 5 with normal downlink cyclic prefix (CP) and of configurations 0 and 4 with extended downlink CP, W_(DAI) ^(UL) is a value that corresponds to the DAI in downlink control information (DCI) format for uplink resource allocation, U_(c) is a number of physical downlink shared channel (PDSCH) transmissions and physical downlink control channel (PDCCH) transmissions that indicate downlink semi-persistent scheduling (SPS) release that are received in subframes of bundling window of c^(th) serving cell, U is a maximum of the U_(c)s, and C_(c) ^(DL) is a number of transport blocks supported per subframe for transmission mode of the c^(th) serving cell.
 25. The one or more computer-readable media of claim 24, wherein the instructions, when executed, further cause the feedback controller to: determine a System Information Block 1 (SIB1) configuration for a primary serving cell (PCell) of the plurality of serving cells; determine a SIB1 configuration for a second secondary serving cell (SCell) of the plurality of configured serving cells; and determine a HARQ timing reference configuration for the SCell based on the SIB1 configuration of the PCell and the SIB1 configuration of the SCell.
 26. The one or more computer-readable media of claim 25, wherein the instructions, when executed, further cause the feedback controller to: determine a number of downlink subframes in bundling window of the SCell based on the determined HARQ timing reference configuration.
 27. The one or more computer-readable media of claim 24, wherein the instructions, when executed, further cause the feedback controller to: determine a UL-DL configuration for a primary serving cell (PCell) of the plurality of configured serving cells; determine a UL-DL configuration for a second secondary serving cell (SCell) of the plurality of configured serving cells; and determine a HARQ timing reference configuration for the SCell based on the UL-DL configuration of the PCell and the UL-DL configuration of the SCell.
 28. The one or more computer-readable media of claim 24, wherein the instructions, when executed, further cause the UE to: puncture physical uplink shared channel (PUSCH) resource elements with the determined number of HARQ-ACK bits. 